Detecting interleaving

نویسندگان

  • Spencer Rugaber
  • R. E. Kurt Stirewalt
  • Linda M. Wills
چکیده

The various goals and requirements of a system are realized in software as fragments of code that are typi cally interleaved in that they may be woven together in the same contiguous textual area of code The frag ments of code are often delocalized and overlap rather than being composed in a simple linear sequence In terleaving severely complicates software comprehen sion and maintenance To address this problem we are developing analysis tools based on the Software Re nery This paper describes our experiences in de tecting interleaving in a corpus of mathematical soft ware written in Fortran from the Jet Propulsion Labo ratory In particular it discusses how feasible it is to detect interleaving of various types and the ability of existing tools to assist these types of detection Introduction and Motivation To understand a program one often has to unravel multiple interwoven strands of computation each re sponsible for accomplishing a distinct purpose We use the term plan to denote a description or representation of a computational structure that the designers have proposed as a way of achieving some purpose or goal in a program Plans can occur at any level of abstraction from architectural overviews to code Interleaving expresses the merging of two or more dis tinct plans within some contiguous textual area of a program A trivial example is a single loop responsible for computing both the maximum element of a vector and its position A less trivial example is a program intended to write a report that summarizes data ex tracted from sorted input records The program has two purposes computing the summary data and man aging the construction of the report headers page breaks page counts etc In an object oriented pro gram these two purposes might well be realized by two separate objects In traditional code however the implementations of these functions are often in terleaved and understanding the code is signi cantly complicated Interleaving may arise for e ciency reasons For example it may be more e cient to compute two re lated values in one place than to do so separately Or interleaving may be the result of inadequate software maintenance such as adding a feature locally to an existing routine rather than undertaking a thorough redesign Or interleaving may arise as a natural by product of expressing separate but related plans in a linear textual medium For example accessors and constructors for manipulating data structures are typ ically interleaved throughout programs written in tra ditional programming languages due to their procedu ral rather than object oriented structure Regardless of why interleaving is introduced it severely compli cates understanding a program This makes it di cult to perform a variety of tasks including extracting reusable components localizing the e ects of mainte nance changes and migrating to object oriented lan guages What is needed is to isolate the separate strands of computation understand them individually and then see how they interrelate We are building analysis tools to do this Traditional slicing techniques are applicable to this problem but are not powerful enough to disentangle all forms of interleaving They rely only on data and control ow whereas our tools also use deeper knowledge of what plans are interleaved in the code

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Sub-threshold 9T SRAM Cell with High Write and Read ability with Bit Interleaving Capability

This paper proposes a new sub-threshold low power 9T static random-access memory (SRAM) cell compatible with bit interleaving structure in which the effective sizing adjustment of access transistors in write mode is provided  by isolating writing and reading paths. In the proposed cell, we consider a weak inverter to make better write mode operation. Moreover applying boosted word line feature ...

متن کامل

Detection and Robustness of Digital Image Watermarking Signals : a Communication Theory Approach

DETECTION AND ROBUSTNESS OF DIGITAL IMAGE WATERMARKING SIGNALS: A COMMUNICATION THEORY APPROACH by George F. Elmasry The detection and robustness of the watermark signal is studied from a communications point of view. The contributions of this dissertation are presented in two parts. The first part, which covers the detection aspect, introduces a new digital image watermarking approach that emb...

متن کامل

Efficient Sparse Dynamic Programming for the Merged Lcs Problem with Block Constraints

Detecting the interleaving relationship between sequences has become important because of its wide applications to genomic and signal comparison. Given a target sequence T and two merging sequences A and B, recently Huang et al. propose algorithms for the merged LCS problem, without or with block constraint, whose aim is to find the longest common subsequence (LCS) with interleaving relationshi...

متن کامل

Runtime Model Checking of Multithreaded C Programs using Automated Instrumentation Dynamic Partial Order Reduction and Distributed Checking

Conventional testing methods are inadequate for debugging multithreaded C programs because many “unexpected” thread interactions can only be manifested through very low probability event sequences that are easily missed during test creation. As a result, bugs can escape into the field, and often manifest years after code deployment [1]. While the approach of building formal models in modeling l...

متن کامل

A Non–Interleaving Semantics for MSC

In this paper, we develop a non–interleaving semantics and an interleaving semantics for MSC’96 based on the model of families of partially ordered sets. These semantics are no denotational semantics, but are defined via translations of the textual syntax for MSC’96 into a process algebra. We show that the interleaving semantics agrees on BMSC with the standardized semantics for MSC’92, while t...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1995